package br.com.android.modelo;

import java.util.List;

import br.com.android.R;
import br.com.android.persistencia.manipularDados;
import br.com.android.productivecenter.EditarDocumentoActivity;

import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class DocumentAdapter extends BaseAdapter {
	private Context context;
	private List<Documento> listaDocumentos;
	private manipularDados persistencia;
	public String userName;
	
	private int[] images = new int[]{
            R.drawable.apresentacao,
            R.drawable.planilha,
            R.drawable.texto
	};
	
	public DocumentAdapter(Context context, List<Documento> listaDocumentos, manipularDados persistencia, String userName) {
		this.context = context;
		this.listaDocumentos = listaDocumentos;
		this.persistencia = persistencia;
		this.userName = userName;
	}
	
    @Override
    public int getCount() {
        return listaDocumentos.size();
    }

    @Override
    public Object getItem(int position) {
        return listaDocumentos.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }
    
    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
    	Documento documento = listaDocumentos.get(position);
    	
    	LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    	View view = inflater.inflate(R.layout.listview_documentos, null);
    	
        view.setClickable(true);
        view.setFocusable(true);
    	
    	TextView tituloDocumento = (TextView) view.findViewById(R.id.tituloDocumento);
    	tituloDocumento.setText(documento.getTitulo());
    	//TextView tipoDocumento = (TextView) view.findViewById(R.id.tipoDocumento);
    	//tipoDocumento.setText("   " + documento.getTipo());
    	
    	ImageView img = (ImageView)view.findViewById(R.id.imageView1);
        img.setImageResource(images[documento.getTipo()]);
         
    	TextView dataDocumento = (TextView) view.findViewById(R.id.dataDocumento);
    	dataDocumento.setText(documento.getData());
    	
        view.setOnClickListener(new View.OnClickListener() {
            @Override
           public void onClick(View v) {
            	Documento documento = listaDocumentos.get(position);
				//Intent i = new Intent(context, EditarDocumentoActivity.class); 
				//i.putExtra("nome", documento.getTitulo());
				//i.putExtra("conteudo", documento.getConteudo());
				//i.putExtra("nelson", persistencia);
				//i.putExtra("documento", documento);
				//context.startActivity(i);
             //new AlertDialog.Builder(context).setTitle(documento.getTitulo()).show();
            	Dialogs.imprimirMensagem(context, "Visualização Documento", 
            							 documento.getTitulo() + "\n\n" + documento.getConteudo());
            }

          });
        
        view.setOnLongClickListener(new View.OnLongClickListener() {
			
			@Override
			public boolean onLongClick(View arg0) {
				Documento documento = listaDocumentos.get(position);
				Intent i = new Intent(context, EditarDocumentoActivity.class); 
				i.putExtra("nome", documento.getTitulo());
				i.putExtra("conteudo", documento.getConteudo());
				i.putExtra("nelson", persistencia);
				i.putExtra("documento", documento);
				i.putExtra("userName",userName);
				context.startActivity(i);
             new AlertDialog.Builder(context).setTitle(documento.getTitulo()).show();
             return false;
			}
		});

    	return view;
    }
}
